package cn.itcast.redis;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
/**
 * Jedis的连接池使用
 */
public class JedisPoolDemo {

    public static void main(String[] args) {
        // 构建连接池配置信息
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        // 设置最大连接数
        jedisPoolConfig.setMaxTotal(50);
        // 设置获取连接的最大等待时间
        jedisPoolConfig.setMaxWaitMillis(1000);
        // 开启获取连接时可用性校验，保证拿到的连接都是可用的
        jedisPoolConfig.setTestOnBorrow(true);

        // 构建连接池，设置配置信息、redis服务地址和端口
        JedisPool jedisPool = new JedisPool(jedisPoolConfig, "192.168.56.101", 6379);

        // 从连接池中获取连接
        Jedis jedis = jedisPool.getResource();

        // 读取数据
        System.out.println(jedis.get("mytest"));

        // 将连接还回到连接池中
        jedis.close();
        
        // 释放连接池
        jedisPool.close();
    }
}
